import { defHttp, jsonHttp } from '@/utils/http/axios';
import { RolePageListGetResultModel, RoleListGetResultModel } from '../demo/model/systemModel';
import { BasicListResult, BasicDataResult } from '../model/baseModel';

enum Api {
  paperList = '/hl/ex/manage/paperList',
  paperSelectList='/hl/ex/manage/paperSelectList',
  teamSelectList='/hl/ex/manage/teamSelectList',
  paperSave = '/hl/ex/manage/paperSave',
  paperActive='/hl/ex/manage/paperActive',
  paperDetail='/hl/ex/manage/paperDetail',
  categoryList='/hl/ex/manage/categoryList',
  categorySave='/hl/ex/manage/categorySave',
  categoryRemove='/hl/ex/manage/categoryRemove',

  questionList='/hl/ex/manage/questionList',
  questionSave='/hl/ex/manage/questionSave',
  questionRemove='/hl/ex/manage/questionRemove',

  importQuestion='/hl/ex/manage/importQuestion',///hl/heng/dkn/product/importDknProduct   /hl/ex/manage/importQuestion
  importQuestionSort='/hl/ex/manage/importQuestionSort',
  importQuestion2='/hl/ex/manage/importQuestion2',
  questionOptions='/hl/ex/manage/questionOptions',

  questionBatchCategoryId='/hl/ex/manage/questionBatchCategoryId',
  countByCategoryId='/hl/ex/manage/countByCategoryId',

  teamList='/hl/ex/manage/teamList',
  teamSave='/hl/ex/manage/teamSave',
  teamDetail='/hl/ex/manage/teamDetail',
  teamRemove='/hl/ex/manage/teamRemove',

  importTeam='/hl/ex/manage/importTeam',

  teamUserList='/hl/ex/manage/teamUserList',

  publishPaperList='/hl/ex/manage/publishPaperList',
  addPublishPaper='/hl/ex/manage/addPublishPaper',
  getPublishPaper='/hl/ex/manage/getPublishPaper',
  startPublishPaper='/hl/ex/manage/startPublishPaper',
  removePublishPaper='/hl/ex/manage/removePublishPaper',
  publishPaperActive='/hl/ex/manage/publishPaperActive',
  testTaskScheduler='/hl/ex/manage/testTaskScheduler',

  sysNotifySubmit="/hl/ex/manage/sysNotifySubmit",
  getScoketUsers='/hl/ex/manage/getScoketUsers',
  getUserAnsers='/hl/ex/manage/getUserAnsers',
  userPaperList='/hl/ex/manage/userPaperList',

  getRanks='/hl/user/ex/getRanks',
  questionBatchRemove='/hl/ex/manage/questionBatchRemove',
  initRule='/hl/ex/manage/initRule',
  initCategory='/hl/ex/manage/initCategory',

  saveTeamRules='/hl/ex/manage/saveTeamRules',

  getPagerUserRanks='/hl/user/ex/getPagerUserRanks',
  getPaperTeamRank='/hl/user/ex/getPaperTeamRank',
  getUsers='/hl/user/ex/getUsers',
  getTeams='/hl/user/ex/getTeams',

  getUserScore='/hl/ex/manage/getUserScore',
  importXinGeQuestionFn='/hl/ex/manage/importXinGeQuestionFn',
  getPaperByPublishPaperId='/hl/user/ex/getPaperByPublishPaperId',
  manageUserScoreByMainShi='/hl/ex/manage/manageUserScoreByMainShi',
  userPaperBrakeGroup='/hl/ex/manage/userPaperBrakeGroup',
  getUserGroups='/hl/ex/manage/getUserGroups',
  userPaperBrakeAll='/hl/ex/manage/userPaperBrakeAll',
  savePublishGroup='/hl/ex/manage/savePublishGroup',

  againPublishGroup='/hl/ex/manage/againPublishGroup',

  getAnsersPublishPaper='/hl/ex/manage/getAnsersPublishPaper',

  againCountQuestionScoreFn='/hl/ex/manage/againCountQuestionScoreFn',

  againCountByAnserLog='/hl/ex/manage/againCountByAnserLog',
  getCountByAnserLog='/hl/ex/manage/getCountByAnserLog',

}
export const paperList = (params?: any) =>
  defHttp.post<RolePageListGetResultModel[]>({ url: Api.paperList, params });

export const paperSelectList = (params?: any) =>
  defHttp.post<RolePageListGetResultModel[]>({ url: Api.paperSelectList, params });


export const teamSelectList = (params?: any) =>
  defHttp.post<RolePageListGetResultModel[]>({ url: Api.teamSelectList, params });


export const paperSave = (params?: any) =>
  jsonHttp.post<RolePageListGetResultModel[]>({ url: Api.paperSave, params });

export const paperActive = (params?: any) =>
  defHttp.post<RolePageListGetResultModel[]>({ url: Api.paperActive, params });

export const paperDetail = (params?: any) =>
  defHttp.post<RolePageListGetResultModel[]>({ url: Api.paperDetail, params });

export const categoryList = (params?: any) =>
  jsonHttp.post<RolePageListGetResultModel[]>({ url: Api.categoryList, params });
export const categorySave = (params?: any) =>
  defHttp.post<RolePageListGetResultModel[]>({ url: Api.categorySave, params });

export const categoryRemove = (params?: any) =>
  defHttp.post<RolePageListGetResultModel[]>({ url: Api.categoryRemove, params });

export const questionList = (params?: any) =>
  defHttp.post<RolePageListGetResultModel[]>({ url: Api.questionList, params });

export const questionSave = (params?: any) =>
  jsonHttp.post<RolePageListGetResultModel[]>({ url: Api.questionSave, params });

export const questionRemove = (params?: any) =>
  defHttp.post<RolePageListGetResultModel[]>({ url: Api.questionRemove, params });

export const importQuestion = (params?: any) =>
  jsonHttp.post<BasicListResult<any>>({ url: Api.importQuestion, params });

export const importQuestionFn2 = (params?: any) =>
  jsonHttp.post<BasicListResult<any>>({ url: Api.importQuestion2, params });


export const questionOptions = (params?: any) =>
  defHttp.post<RolePageListGetResultModel[]>({ url: Api.questionOptions, params });


export const questionBatchCategoryId = (params?: any) =>
  defHttp.post<RolePageListGetResultModel[]>({ url: Api.questionBatchCategoryId, params });


export const countByCategoryId = (params?: any) =>
  defHttp.post<RolePageListGetResultModel[]>({ url: Api.countByCategoryId, params });

export const teamList = (params?: any) =>
  defHttp.post<RolePageListGetResultModel[]>({ url: Api.teamList, params });

export const teamSave = (params?: any) =>
  jsonHttp.post<BasicListResult<any>>({ url: Api.teamSave, params });

export const teamDetail = (params?: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.teamDetail, params });

export const teamRemove = (params?: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.teamRemove, params });

export const importTeam = (params?: any) =>
  jsonHttp.post<BasicListResult<any>>({ url: Api.importTeam, params });

export const teamUserList = (params?: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.teamUserList, params });


export const publishPaperList = (params?: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.publishPaperList, params });

export const addPublishPaper = (params?: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.addPublishPaper, params });

export const getPublishPaper = (params?: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.getPublishPaper, params });

export const startPublishPaper = (params?: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.startPublishPaper, params });

export const removePublishPaper = (params?: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.removePublishPaper, params });

export const publishPaperActive = (params?: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.publishPaperActive, params });

export const testTaskScheduler = (params?: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.testTaskScheduler, params });

export const sysNotifySubmit = (params?: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.sysNotifySubmit, params });

export const getScoketUsers = (params?: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.getScoketUsers, params });

export const getUserAnsers = (params?: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.getUserAnsers, params });

export const userPaperList = (params?: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.userPaperList, params });

export const getRanks = (params?: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.getRanks, params });

export const questionBatchRemove=(params?: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.questionBatchRemove, params });

export const initRule=(params: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.initRule, params });

export const initCategory=(params: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.initCategory, params });

export const saveTeamRules=(params: any) =>
  jsonHttp.post<BasicListResult<any>>({ url: Api.saveTeamRules, params });

export const getPagerUserRanks=(params: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.getPagerUserRanks, params });

export const getPaperTeamRank=(params: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.getPaperTeamRank, params });

export const getUsers=(params: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.getUsers,params });

export const getTeams=(params: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.getTeams, params });

export const getUserScore=(params: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.getUserScore, params });

export const importXinGeQuestionFn=(params: any) =>
  jsonHttp.post<BasicListResult<any>>({ url: Api.importXinGeQuestionFn, params });


export const importQuestionSort=(params: any) =>
  jsonHttp.post<BasicListResult<any>>({ url: Api.importQuestionSort, params });


export const getPaperByPublishPaperId=(params: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.getPaperByPublishPaperId, params });

export const manageUserScoreByMainShi=(params: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.manageUserScoreByMainShi, params });

export const userPaperBrakeGroup=(params: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.userPaperBrakeGroup, params });//按模块来进行重考

export const getUserGroups=(params: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.getUserGroups, params });

export const userPaperBrakeAll=(params: any) =>
  defHttp.post<BasicListResult<any>>({url: Api.userPaperBrakeAll, params})

export const savePublishGroup=(params: any) =>
  jsonHttp.post<BasicListResult<any>>({ url: Api.savePublishGroup, params });

export const againPublishGroup=(params: any) =>
  jsonHttp.post<BasicListResult<any>>({ url: Api.againPublishGroup, params });


export const getAnsersPublishPaper=(params: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.getAnsersPublishPaper, params });


export const againCountQuestionScoreFn=(params: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.againCountQuestionScoreFn, params });

export const againCountByAnserLog=(params: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.againCountByAnserLog, params });
export const getCountByAnserLog=(params: any) =>
  defHttp.post<BasicListResult<any>>({ url: Api.getCountByAnserLog, params });
